import numpy as ny
import pandas as pd
from matplotlib import pyplot as plt

data_frame = pd.DataFrame(ny.random.randint(1, 10, (3, 4)), index=list('abc'), columns=list('ABCD'))
print(data_frame)
"""
count: 计数
mean: 平均值
std: 标准差
min: 最小值
max: 最大值
50%: 中数
25%、50%、75%: 分位数
"""
print(data_frame.describe())

# 获取每列的最大值: 默认
print(data_frame.max())
# 获取每行的最大值: axis参数控制
print(data_frame.max(axis=1))

# 获取每列最大值的索引，也可以通过axis参数控制获取每行的最大值的索引
print(data_frame.idxmax())
print(data_frame.idxmax(axis=1))

# 每行都获取上一列的累加值
print(data_frame['C'].cumsum())

# 画图表示 TODO 需要展示图形效果
data_frame['C'].cumsum().plot()

# pandas的plot方法无法直接画图，通过matplotlib类库实现
plt.plot(data_frame['C'].cumsum())
plt.show()

# 自定义运算: apply方法 apply(自定义函数, axis)
print(data_frame.apply(lambda x: x.max(), axis=0))
